home *** CD-ROM | disk | FTP | other *** search
/ Amiga Developer CD 2.1 / Amiga Developer CD v2.1.iso / Extras / MIDI / camd-37.1 / development / include / midi / camddevices.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-10-27  |  1.6 KB  |  52 lines

  1. #ifndef MIDI_CAMDDEVICES_H
  2. #define MIDI_CAMDDEVICES_H
  3.  
  4. /************************************************************************
  5. *     C. A. M. D.    (Commodore Amiga MIDI Driver)                   *
  6. *************************************************************************
  7. *                                    *
  8. * Design & Development    - Roger B. Dannenberg                *
  9. *            - Jean-Christophe Dhellemmes            *
  10. *            - Bill Barton                    *
  11. *                       - Darius Taghavy                                *
  12. *                                                                       *
  13. * Copyright 1990-1999 by Amiga, Inc.                                    *
  14. *************************************************************************
  15. *
  16. * camddevices.h    - MIDI device driver include file
  17. *
  18. ************************************************************************/
  19.  
  20. #ifndef EXEC_TYPES_H
  21.   #include <exec/types.h>
  22. #endif
  23.  
  24.  
  25. struct MidiPortData 
  26. {
  27.     void (*ActivateXmit)(); /* function to activate transmitter interrupt when idle */
  28. };
  29.  
  30. struct MidiDeviceData 
  31. {
  32.     ULONG Magic;        /* MDD_Magic */
  33.     char *Name;         /* driver name */
  34.     char *IDString;
  35.     UWORD Version;
  36.     UWORD Revision;
  37.  
  38.     BOOL (*Init)(void);     /* called after LoadSeg() */
  39.     void (*Expunge)(void);  /* called before UnLoadSeg() */
  40.     struct MidiPortData *(*OpenPort)();
  41.     void (*ClosePort)();
  42.  
  43.     UBYTE NPorts;        /* number of ports */
  44.     UBYTE Flags;        /* currently none */
  45. };
  46.  
  47. #define MDD_SegOffset    8   /* offset to structure in segment (past NextSeg and MOVEQ/RTS) */
  48. #define MDD_Magic    ((ULONG)'M' << 24 | (ULONG)'D' << 16 | 'E' << 8 | 'V')
  49.  
  50.  
  51. #endif
  52.